package com.aipp.mall.h5.domain.entity;

import com.aipp.mall.common.anno.Note;
import com.aipp.mall.common.model.BaseAudit;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 用户微信信息对象 ums_member_wechat
 *
 * @author zcc
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("ums_member_wechat")
public class MemberWechat extends BaseAudit implements Serializable {

    @Serial
    private static final long serialVersionUID = -4043684561440265047L;

    private Long id;

    @Note(name = "MEMBER_ID")
    private Long memberId;

    @Note(name = "只有在用户将公众号绑定到微信开放平台帐号后，才会出现该字段")
    private String unionid;

    @Note(name = "用户的标识，对当前公众号唯一")
    private String openid;

    @Note(name = "小程序唯一身份ID")
    private String routineOpenid;

    @Note("用户所在的分组ID（兼容旧的用户分组接口）")
    private Integer groupid;

    @Note(name = "用户被打上的标签ID列表")
    private String tagidList;

    @Note(name = "用户是否订阅该公众号标识")
    private Integer subscribe;

    @Note(name = "关注公众号时间")
    private Integer subscribeTime;

    @Note(name = "小程序用户会话密匙")
    private String sessionKey;

    @Note(name = "token")
    private String accessToken;

    @Note(name = "过期时间")
    private Integer expiresIn;

    @Note(name = "刷新token")
    private String refreshToken;

    @Note("过期时间")
    private LocalDateTime expireTime;

}
